<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>状态的保存与恢复</title>
    <link rel="stylesheet" type="text/css" href="/css/YTSConfig.css">
    <link rel="stylesheet" type="text/css" href="/css/Style.css">
</head>
<body>
    <div class="body SuspensionFixationALLWindow">
        <canvas id="tutorial" class="canvas AbsHorizontalVerticalCenter"
            style="width: 300px; height: 150px;">
            <p>不支持类型内容, 这是一个 HTML Canvas 控件</p>
        </canvas>
    </div>

    <script type="text/javascript">
        var canvas = document.getElementById('tutorial');
        if (!canvas.getContext) {
            alert('不支持 canvas.getContext 意味: 不支持 canvas 属性');
        }
        var ctx = canvas.getContext('2d');

        ctx.fillStyle = '#000';
        ctx.fillRect(0, 0, 150, 150);   // 使用默认设置绘制一个矩形
        ctx.save();                     // 保存默认状态设置

        ctx.fillStyle = '#09F';         // 在原有配置基础上对颜色进行改变
        ctx.fillRect(15, 15, 120, 120); // 使用新的设置绘制一个矩形
        ctx.save();                     // 保存当前状态

        ctx.fillStyle = '#FFF';         // 再次改变颜色配置
        ctx.globalAlpha = 0.5;          // 另外改变透明度
        ctx.fillRect(30, 30, 90, 90);   // 使用新的配置绘制一个矩形

        ctx.restore();                  // 重新加载之前的颜色状态, 放弃当前状态
        ctx.fillRect(45, 45, 60, 60);   // 使用上一次的配置绘制一个矩形

        ctx.restore();                  // 加载第一次的颜色配置
        ctx.fillRect(60, 60, 30, 30);   // 使用第一次的配置再绘制一个矩形
    </script>
</body>
</html>
